package cn.sccl.springmvc.controller;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import cn.sccl.springmvc.pojo.Items;
import cn.sccl.springmvc.pojo.QueryVo;
import cn.sccl.springmvc.service.ItemService;

/**
 * @author 饶爽
 * @time 2019年10月20日 上午7:04:37
 * @version 1.0.0
 * 商品管理
*/
@Controller
public class ImemController {
    
    @Autowired
    private ItemService itemService;
    //入门程序 第一   包类 + 类包 + 方法名
    @RequestMapping(value = "/item/itemlist.action")
    public ModelAndView itemList() {
        
        /*// 创建页面需要显示的商品数据
        List<Items> list = new ArrayList<Items>();
        list.add(new Items(1, "1华为 荣耀8", 2399f, new Date(), "质量好！1"));
        list.add(new Items(2, "2华为 荣耀8", 2399f, new Date(), "质量好！2"));
        list.add(new Items(3, "3华为 荣耀8", 2399f, new Date(), "质量好！3"));
        list.add(new Items(4, "4华为 荣耀8", 2399f, new Date(), "质量好！4"));
        list.add(new Items(5, "5华为 荣耀8", 2399f, new Date(), "质量好！5"));
        list.add(new Items(6, "6华为 荣耀8", 2399f, new Date(), "质量好！6"));*/
        
        //获取数据库中的数据
        List<Items> list = itemService.selectItemsList();
        
        ModelAndView mav = new ModelAndView();
        //添加数据
        mav.addObject("itemList", list);
//        mav.setViewName("/WEB-INF/jsp/itemList.jsp");
        //视图解析器根据前缀+逻辑视图名+后缀拼接出来物理路径
        mav.setViewName("itemList");//配置视图解释器后的写法
        return mav; 
    }
    //跳转修改商品信息界面
    @RequestMapping(value = "/itemEdit.action")
    //自定义参数绑定写法（value指定前端参数名，required指定参数是否必须，defaultValue指定默认分页页码）
//    public ModelAndView toEdit(@RequestParam(value = "id",required = false,defaultValue = "1") Integer idaaq,
    
    public ModelAndView toEdit(Integer id,HttpServletRequest request,HttpServletResponse response
            ,HttpSession session,Model model){
        //Servlet时代开发
//        String id = request.getParameter("id");//默认参数绑定
        
        //查询一个商品
//        Items items = itemService.selectItemsById(Integer.parseInt(id));
        Items items = itemService.selectItemsById(id);//简单参数绑定
        ModelAndView mav = new ModelAndView();
        //数据
        mav.addObject("item", items);
        mav.setViewName("editItem");
        return mav;
    }
    //提交修改页面 入参  为 Items对象  
    @RequestMapping(value = "/updateitem.action")
//    public ModelAndView updateitem(Items items){
    public ModelAndView updateitem(QueryVo vo){

        //修改
//        itemService.updateItemsById(items);
        itemService.updateItemsById(vo.getItems());
        
        ModelAndView mav = new ModelAndView();
        mav.setViewName("success");
        return mav;
    }
}
